Electronic device and method for processing packet in internet protocol-based network

ABSTRACT

An electronic device and method for processing a packet in an Internet Protocol (IP)-based network are provided. The method performed in an electronic device includes determining a network condition from a received signal, setting one of reference values set for corresponding network conditions as a transmission rate for the determined network condition, and transmitting the packet at the transmission rate.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application claims the benefit under 35 U.S.C. §119(a) of a Koreanpatent application filed on Jul. 21, 2014 in the Korean IntellectualProperty Office and assigned Serial number 10-2014-0091756, the entiredisclosure of which is hereby incorporated by reference.

TECHNICAL FIELD

The present disclosure relates to an electronic device and method forprocessing a packet in an Internet Protocol-based network.

BACKGROUND

Long Term Evolution (LTE) technologies, called fourth generation (4G)mobile communication, have rapidly spread around the globe. The LTEtechnology may provide various real-time data services over InternetProtocol (IP)-based networks. The services may include Voice over LTE(VoLTE) services, Video Telephony over LTE (VT) services, Voice overInternet Protocol (VoIP) services, and the like.

While a call service based on packet data is performed, transmission ofthe packet data may be delayed or lost depending on the networkcondition. In this case, the quality of the call service may degrade.

To improve the degraded quality of the call service, a bitrate forpacket transmission may be controlled or the delayed or lost packet datamay be transmitted again, which is, however, only a follow-up measure.

The above information is presented as background information only toassist with an understanding of the present disclosure. No determinationhas been made, and no assertion is made, as to whether any of the abovemight be applicable as prior art with regard to the present disclosure.

SUMMARY

Aspects of the present disclosure are to address at least theabove-mentioned problems and/or disadvantages and to provide at leastthe advantages described below. Accordingly, an aspect of the presentdisclosure is to provide an electronic device and method for processinga packet in an Internet Protocol (IP)-based network, which determines anetwork condition and controls the bitrate or retransmits packet databefore the quality of a call service degrades.

In accordance with an aspect of the present disclosure, a method forprocessing a packet in an electronic device in an IP-based network isprovided. The method includes determining a network condition from areceived signal, setting one of reference values set for correspondingnetwork conditions as a transmission rate for the determined networkcondition, and transmitting a packet at the transmission rate.

In accordance with another aspect of the present disclosure, anelectronic device is provided. The electronic device includes aprocessor configured to determine a network condition from a receivedsignal, and to set one of reference values set for corresponding networkconditions as a transmission rate for the determined network condition,and a communication module configured to transmit a packet at thetransmission rate.

Other aspects, advantages, and salient features of the disclosure willbecome apparent to those skilled in the art from the following detaileddescription, which, taken in conjunction with the annexed drawings,discloses various embodiments of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features, and advantages of certainembodiments of the present disclosure will be more apparent from thefollowing description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1 illustrates a network environment according to an embodiment ofthe present disclosure;

FIG. 2 illustrates communications between electronic devices accordingto an embodiment of the present disclosure;

FIG. 3 illustrates an electronic device according to an embodiment ofthe present disclosure;

FIG. 4 is a flowchart illustrating operations for setting a bitrate inan electronic device according to an embodiment of the presentdisclosure;

FIG. 5 is a flowchart illustrating operations for setting a bitrate inan electronic device according to other embodiments of the presentdisclosure;

FIG. 6 is a flowchart illustrating a method for transmitting informationabout a received signal in an electronic device according to anembodiment of the present disclosure;

FIG. 7 is a signaling chart illustrating operations for setting abitrate between electronic devices according to an embodiment of thepresent disclosure;

FIG. 8 illustrates a Real-time Transport Protocol (RTP) packet structureaccording to an embodiment of the present disclosure;

FIG. 9 illustrates an extended RTP packet structure according toembodiments of the present disclosure;

FIG. 10 is a block diagram of an electronic device according to anembodiment of the present disclosure; and

FIG. 11 shows communication protocols between multiple electronicdevices according to an embodiment of the present disclosure.

Throughout the drawings, like reference numerals will be understood torefer to like parts, components, and structures.

DETAILED DESCRIPTION

The following description with reference to the accompanying drawings isprovided to assist in a comprehensive understanding of variousembodiments of the present disclosure as defined by the claims and theirequivalents. It includes various specific details to assist in thatunderstanding but these are to be regarded as merely exemplary.Accordingly, those of ordinary skill in the art will recognize thatvarious changes and modifications of the various embodiments describedherein may be made without departing from the scope and spirit of thepresent disclosure. In addition, descriptions of well-known functionsand constructions may be omitted for clarity and conciseness.

The terms and words used in the following description and claims are notlimited to the bibliographical meanings, but, are merely used by theinventor to enable a clear and consistent understanding of the presentdisclosure. Accordingly, it should be apparent to those skilled in theart that the following description of various embodiments of the presentdisclosure is provided for illustration purpose only and not for thepurpose of limiting the present disclosure as defined by the appendedclaims and their equivalents.

It is to be understood that the singular forms “a,” “an,” and “the”include plural referents unless the context clearly dictates otherwise.Thus, for example, reference to “a component surface” includes referenceto one or more of such surfaces.

The embodiments of the disclosure may, however, be embodied in manydifferent forms and should not be construed as limited to theembodiments set forth herein; rather, these embodiments are provided sothat this disclosure will be thorough and complete, and will fullyconvey the scope of the embodiments of the disclosure to those skilledin the art. Like numbers refer to like elements throughout.

The terms “comprise” and/or “comprising” as herein used specify thepresence of disclosed functions, operations, or components, but do notpreclude the presence or addition of one or more other functions,operations, or components. It will be further understood that the terms“comprise” and/or “have,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

As used herein, the term “and/or” includes any and all combinations ofone or more of the associated listed items. For examples, “A or B” mayinclude A, or include B, or include both A and B.

Ordinal numbers as used herein, such as “first”, “second”, and the like,may modify various components of various embodiments, but do not limitthose components. For example, these terms do not limit order and/orimportance of corresponding elements, components, regions, layers and/orsections. These terms are only used to distinguish one element,component, region, layer or section from another region, layer orsection. For example, a first user device and a second user devicerefers to two different user devices. Thus, a first element, component,region, layer or section discussed below could be termed a secondelement, component, region, layer or section without departing from theteachings of the embodiments of the present disclosure.

When the term “connected” or “coupled” is used, a component may bedirectly connected or coupled to another component or may be indirectlyconnected or coupled to another component via another new component.However, if a component is said to be “directly connected” or “directlycoupled” to another component, it should be interpreted as literally asit says.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the embodimentsof the present disclosure.

It is to be understood that the singular forms “a,” “an,” and “the”include plural references unless the context clearly dictates otherwise.

Unless otherwise defined, all terms including technical and scientificterms used herein have the same meaning as commonly understood by one ofordinary skill in the art to which the embodiments of the presentdisclosure belong. It will be further understood that terms, such asthose defined in commonly used dictionaries, should be interpreted ashaving a meaning that is consistent with their meaning in the context ofthe relevant art and will not be interpreted in an idealized or overlyformal sense unless expressly so defined herein.

An electronic device to which various embodiments of the presentdisclosure may be applied may include a communication functionality. Forexample, the electronic device may include at least one of smart phones,tablet Personal Computers (PCs), mobile phones, video phones, e-bookreaders, desktop PCs, laptop PCs, netbook computers, Personal DigitalAssistants (PDAs), Portable Multimedia Players (PMPs), Moving PictureExperts Group (MPEG-1 or MPEG-2) Audio Layer III MP3 players, mobilemedical devices, cameras, and wearable devices (e.g., Head-MountedDevices (HMDs), such as electronic glasses, electronic clothes,electronic bracelets, electronic necklaces, electronic appcessories,electronic tattoos, or smart watches).

In some embodiments, the electronic device may be a smart home appliancehaving the communication capability.

The smart home appliance may include at least one of, for example,televisions, Digital Video Disc (DVD) players, audio systems,refrigerators, air conditioners, cleaning machines, ovens, microwaves,washing machines, air purifiers, set-top boxes, TV sets (e.g., SamsungHomeSync™, Apple TV™, or Google TV™), game consoles, electronicdictionaries, electronic keys, camcorders, and electronic albums.

In some embodiments, the electronic device may include at least one of avariety of medical equipment (e.g., a Magnetic Resonance Angiography(MRA) device, a Magnetic Resonance Imaging (MRI) device, a ComputedTomography (CT) device, a photographing device, an ultrasonic device,and the like), navigation devices, Global Positioning System (GPS)receivers, Event Data Recorders (EDRs), Flight Data Recorders (FDRs),car infotainment devices, marine electronic devices (e.g., marinenavigation systems, gyro-compass, and the like), avionics, securitydevices, car head units, industrial or home robots, banking agency'sAutomatic Teller Machines (ATMs), or Point of Sales (POSs) for shops.

In some embodiments, the electronic device may include at least one of apart of the furniture or building/structure with a communicationcapability, electronic boards, electronic signature receiving devices,projectors, or various instrumental equipment (e.g., meters for water,electricity, gas, or radio waves). The electronic device in accordancewith various embodiments of the present disclosure may be one or morecombinations of the aforementioned devices. In addition, the electronicdevice in accordance with various embodiments of the present disclosuremay be a flexible device. It will be obvious to a person of ordinaryskill in the art that the electronic device is not limited to theaforementioned examples. The term ‘user’ as herein used may refer to aperson who uses the electronic device or a device (e.g., an artificiallyintelligent device) that uses the electronic device.

An electronic device and method for processing packets in an InternetProtocol (IP)-based network in accordance with various embodiments willbe described in connection with accompanying drawings.

FIG. 1 illustrates a network environment according to an embodiment ofthe present disclosure.

Referring to FIG. 1, a network environment 100 may include an electronicdevice 101, external electronic devices, such as an electronic device104 and a server 106, and a network 162 that connects the electronicdevices 101 and 104 or 106.

The electronic device 101 may include at least one of a bus 110, aprocessor 120, a memory 130, an input/output (I/O) interface 140, adisplay 150, and a communication interface 160, but is not limitedthereto.

The bus 110 may be a means for interconnecting the enumerated componentsand delivering communications (e.g., control messages) among them.

The processor 120 may, for example, receive requests or commands fromthe enumerated components, for example, the memory 130, the I/Ointerface 140, the display 150, the communication interface 160, and thelike, via the bus 110, interpret the requests or commands, and performan operation or data processing according to the interpreted request orcommand.

The memory 130 may store requests, commands, or data received orgenerated from the enumerated components, for example, the processor120, the I/O interface 140, the display 150, the communication interface160, and the like. The memory 130 may include, for example, programmingmodules, such as kernel 131, middleware 132, Application ProgrammingInterface (API) 133, application 134, and the like. Each of theprogramming modules may be implemented in software, firmware, hardware,or two or more combinations thereof.

The kernel 131 may control and/or manage system resources (e.g., the bus110, the processor 120, the memory 130, and the like) to be used tocarry out an operation or function implemented by the other programmingmodules, for example, the middleware 132, the API 133, or theapplication 134. Furthermore, the kernel 131 may provide an interfacefor the middleware 132, the API 133, or the application 134 to accessrespective components of the electronic device 101 to control or managethem.

The middleware 132 may act as intermediary for the API 133 or theapplication 134 to communicate data with the kernel 131. In addition,the middleware 132 may perform control operations (e.g., scheduling orload balancing) in response to a task request received from theapplication 134 by way of, for example, placing a high priority on atleast one application included in the application 134 to use systemresources (e.g., the bus 110, the processor 120, the memory and thelike) of the electronic device 101.

The API 133 is an interface for the application 134 to control afunction provided from the kernel 131 or the middleware 132, and mayinclude at least one interface or function (e.g., an instruction) forfile control, window control, image processing, text control, and thelike.

In accordance with various embodiments, the application 134 may includea Short Message Service (SMS)/Multimedia Messaging Service (MMS)application, an email application, a calendar application, an alarmapplication, a healthcare application (e.g., an application formeasuring quantity of motion or blood sugar), or an environmentalinformation application (e.g., an application for providing atmosphericpressure, humidity, or temperature). Additionally or alternatively, theapplication 134 may be an application involved in information exchangebetween the electronic device 101 and an external electronic device 104.The application involved in such information exchange may include, forexample, a notification relay application for relaying particularinformation to the external electronic device 104 or a device managementapplication for managing the external electronic device 104.

For example, the notification relay application may include afunctionality for notifying the external electronic device 104 ofnotification information generated in any other application (e.g., theSMS/MMS application, the email application, the healthcare application,or the environmental information application) of the electronic device101. Additionally or alternatively, the notification relay applicationmay, for example, receive the notification information from the externalelectronic device 104 and provide the notification information to theuser. The device manager application may manage (e.g., install, deleteor update) a function (e.g., turning on/off the external electronicdevice 104 or a part of the external electronic device 104, orcontrolling display brightness of the external electronic device 104)with respect to part of the external electronic device 104 incommunication with the electronic device 101, or a service (e.g.,calling or messaging service) provided by the external electronic device104 or an application running in the external electronic device 104.

In accordance with various embodiments of the present disclosure, theapplication 134 may include an application designated depending on anattribute of the electronic device 104, for example, on a type of theelectronic device 104. For example, in case the external electronicdevice 104 is an MP3 player, the application 134 may include anapplication related to music replay. Similarly, in case the externalelectronic device 104 is a mobile medical device, the application 134may include an application related to healthcare. In accordance with anembodiment, the application 134 may include at least one of anapplication dedicated to the electronic device 101 and an applicationreceived from the external electronic device 104 or the server 106.

The I/O interface 140 may deliver instructions or data entered by theuser through the I/O device (e.g., a sensor, a keyboard, or a touchscreen) to the processor 120, the memory 130, or the communicationinterface 160 via the bus 110. For example, the I/O interface 140 mayprovide data for a user touch input through the touch screen to theprocessor 120. The I/O interface 140 may also output a command or datareceived from the processor 120, the memory 130, or the communicationinterface 160 via the bus 110 through the I/O device (e.g., a speaker orthe display 150). For example, the I/O interface 140 may output sounddata processed by the processor 120 to the user.

The display 150 may display a variety of information (e.g., multimediadata or text data) for the user. In accordance with an embodiment of thepresent disclosure, the display 150 may display recommendation data.

The communication interface 160 may connect communication between theelectronic device 101 and the external electronic device 104 or theserver 104.

For example, the communication interface 160 may be connected to anetwork 162 through wired or wireless communication and may communicatewith the external electronic device 104 or the server 106. The wirelesscommunication may include at least one of Wi-Fi, BT, Near FieldCommunication (NFC), GPS, Bluetooth Low Energy (BLE) and cellularcommunication (e.g., LTE, LTE-A, CDMA, WCDMA, UMTS, Wibro or GSM). Thewired communication may include at least one of, for example, UniversalSerial Bus (USB), High Definition Multimedia Interface (HDMI),Recommended Standard (RS) 232 and Plain Old Telephone Service (POTS).

In accordance with an embodiment, the network 162 may be atelecommunications network. The telecommunications network may includeat least one of computer network, Internet, Internet of things, andtelephone network. In accordance with an embodiment, a protocol (e.g., atransport layer protocol, a data link layer protocol or a physical layerprotocol) for communication between the electronic device 101 and theexternal device 104 or the server 106 may be supported by at least oneof the application 134, the API 133, the middleware 132, the kernel 131and the communication interface 160.

FIG. 2 illustrates communications between electronic devices accordingto an embodiment of the present disclosure.

Referring to FIG. 2, a network environment 200 may include first andsecond electronic devices 201 and 202, each performingterminal-to-terminal communications. For example, the first and secondelectronic devices 201 and 202 may exchange, for example, real-timedata. The real-time data as used herein may refer to a Real-TimeTransport Protocol (RTP) packet using the RTP protocol. Using the RTPpacket, IP-based real-time voice/video call services, multimediastreaming services, and the like may be performed between the first andsecond electronic devices 201 and 202.

FIG. 3 illustrates an electronic device according to an embodiment ofthe present disclosure.

Referring to FIG. 3, an electronic device 301 may include a processor310 and a communication module 320.

The processor 310 may include a received signal checker 311, an RTPheader checker 312, and a bitrate setting unit 313, and control generaloperations of the electronic device 301. In accordance with variousembodiments of the disclosure, the processor 310 may determine thestrength of a received signal checked by the received signal checker311. The processor 310 may determine a network condition based on thereceived signal.

In accordance with various embodiments of the present disclosure, theprocessor 310 may determine a network condition by taking into accountnot only the strength of a signal received by the electronic device 301receives but also the strength of a received signal included in an RTPheader received from another external electronic device.

The received signal checker 311 may measure the strength of a signalreceived by the electronic device 301. The received signal may includeat least one of Reference Signal Received Power (RSRP), Reference SignalReceived Quality (RSRQ), Signal to Interference plus Noise Ratio (SINR)and Received Signal Strength Indicator (RSSI). Furthermore, the receivedsignal may be a signal received as a result of the electronic device 301performing communication with another electronic device, for example,the electronic device 104, or any received signal from which a networkcondition may be inferred. The received signal checker 311 may deliver ameasurement of the received signal to the processor 310.

The RTP header checker 312 may check an RTP header received from anotherelectronic device. In accordance with various embodiments of the presentdisclosure, the RTP header received may include an indicator indicatingthat a received signal received by an electronic device that transmittedthe RTP header or information about the received signal is included, orthe strength of the received signal. The RTP header checker 312 maydetermine a value of the received signal by checking a header extensionarea of the received RTP header, if the RTP header indicates that itincludes the received signal or information about the received signal.The RTP header checker 312 may deliver the determined value of thereceived signal to the processor 310.

The bitrate setting unit 313 may set a bitrate based on the networkcondition determined by the processor 310. In accordance with variousembodiments of the present disclosure, the processor 310 may classifythe network condition into a strong electric field, a medium electricfiled, a weak electric field, and the like, based on the strength of thereceived signal. For example, the network condition may be classified asrepresented in Table 1 based on the type or strength of the receivedsignal.

Table 1 represents network conditions classified based on the type orstrength of the received signal, in accordance with various embodimentsof the present disclosure.

TABLE 1 RSRP(dBm) RSRQ(dBm) SINR(dBm) Strong Electric Filed −50~−70−2~−7  25~30 Medium Electric Field −70~−85 −7~−13 15~25 Weak ElectricField <−85 <−13 <15

As the network condition is determined based on the strength of thereceived signal, the bitrate setting unit 313 may set a bitrate tocorrespond to the determined network condition by referring to areference value. The reference value may include a size of an RTPpayload based on a particular bitrate per codec. The reference value mayalso include a size of the RTP payload for the bitrate determinedbeforehand based not only on the particular codec but also on otherfactors, such as a scheme for compressing an RTP packet, RTP payloadprocessing mode, and the like.

For example, as an example of the reference value for an AdaptiveMulti-Rate Wideband (AMR-WB) codec, mode of bitrates and size of the RTPpayload allowed to be transmitted at each bitrate are represented inTable 2 and Table 3 as follows.

Table 2 represents computation values for an occasion where bandwidth ofthe AMR-WB codec is AS (Computation of b=AS for AMR-WB (IPv6, ptime=20,bandwidth-efficient mode).

TABLE 2 Mode 6.6 8.85 12.65 14.25 15.85 18.25 19.85 23.05 23.85 SID Bitsper speech frame 132 177 253 285 317 365 397 461 477 40 Payload headerand 10 10 10 10 10 10 10 10 10 10 T° C. RTP payload (bits) 142 187 263295 327 375 407 471 487 50 RTP payload (bytes) 17.75 23.38 32.88 36.8840.88 46.88 50.88 58.88 60.875 6.25 Rounded-up RTP 18 24 33 37 41 47 5159 61 7 payload (bytes) Rounded-up RTP 144 192 264 296 328 376 408 472488 56 payload (bits) RTP header 96 96 96 96 96 96 96 96 96 96 UDPheader 64 64 64 64 64 64 64 64 64 64 IPv6 header 320 320 320 320 320 320320 320 320 320 Total bits per 20 ms 624 672 744 776 808 856 888 952 968536 Total bit-rate (kbps) 31.2 33.6 37.2 38.8 40.4 42.8 44.4 47.6 48.426.8 AS 32 34 38 39 41 43 45 48 49 N/A

Table 3 represents computation values for an occasion where bandwidth ofthe AMR-WB codec is AS (Computation of b=AS for AMR-WB (IPv6, ptime=20,object-aligned mode).

TABLE 3 Mode 6.6 8.85 12.65 14.25 15.85 18.25 19.85 23.05 23.85 SID Bitsper speech frame 132 177 253 285 317 365 397 461 477 40 Speech framesize (bytes) 16.5 22.13 31.63 35.63 39.63 45.63 49.63 57.63 59.625 10Rounded-up speech 17 23 32 36 40 46 50 58 60 5 frame size (bytes)Rounded-up speech 136 184 256 288 320 368 400 464 480 40 frame size(bits) Payload header and T° C. 16 16 16 16 16 16 16 16 16 16 RTPpayload (bits) 152 200 272 304 336 384 416 480 496 56 RTP header 96 9696 96 96 96 96 96 96 96 UDP header 64 64 64 64 64 64 64 64 64 64 IPv6header 320 320 320 320 320 320 320 320 320 320 Total bits per 20 ms 632680 752 784 816 864 896 960 976 536 Total bit-rate (kbps) 31.6 34 37.639.2 40.8 43.2 44.8 48 48.8 26.8 AS 32 34 38 40 41 44 45 48 49 N/A

Assume that a bitrate of the electronic device 301 is set within a rangeof 6.6 kbps˜23.85 kbps as represented in Tables 2 and 3 in accordancewith various embodiments of the present disclosure.

In a case Robust Header Compression (RoHC) is used as an example of theRTP header compression scheme, the bitrate setting unit 313 may set abitrate by referring to Table 3. The bitrate setting unit 313 may set abitrate on a Quality of Service (QoS) basis in the beginning of theconnection. It is now assumed that the bitrate is set to about 23.85kbps on the QoS basis.

Referring to FIG. 3, the size of an RTP payload allowed to betransmitted at about 23.85 kbps may be about 496 bits. Accordingly, inorder to process the RTP payload, bandwidth having at least more thanabout 496 bits may be allocated. Referring to FIG. 3, bandwidth requiredfor transmission at the bitrate of about 23.85 kbps may be about 49 kbpsof the AS. If it is determined that the current network conditioncorresponds to the weak electric field, the bitrate setting unit 313 mayset a bitrate to about 6.6 kbps.

For example, with the bitrate set to about 6.6 kbps, the electronicdevice 301 may transmit as many an RTP payload as 152 bits a time.Referring to FIG. 3, the bandwidth required for transmission at thebitrate of about 6.6 kbps may be about 32 kbps.

For example, as the bitrate is set to about 23.85 kbps, a voice packetmay include an RTP header field, a User Datagram Protocol (UDP) headerfield, and an IPv6 header field, which may be allocated about 96 bits,64 bits, and 32 bits, respectively. The electronic device 301 maytransmit as many packets as a total of about 976 bits by including about496 bits of payload required per packet in addition to 480 bits of basicoverhead.

In this regard, if the bitrate for transmission is reduced to about 6.6kbps, it means that bandwidth unnecessary for transmission is furtherallocated, thereby leading to a waste of bandwidth.

In accordance with various embodiments of the present disclosure, theelectronic device 301 may transmit the RTP payload as many times aspossible within the range of allocated bandwidth. For example, withbandwidth having about 496 bits allocated, an RTP payload having thesize of about 152 bits may be transmitted at least three times.

In accordance with various embodiments of the present disclosure, theelectronic device 301 may reduce the bitrate for the sampled voicepacket to about 6.6 kbps, integrates payloads of three voice packetsinto a single RTP packet by means of Adaptive Multi-Rate (AMR) bundlingof the payloads of the voice packets, and transmit the RTP packetincluding the three payloads at intervals of 20 ms.

For example, the three voice packets may be repeatedly transmitted inthe preallocated bandwidth just in case some packets are lost in themiddle of the transmission.

The communication module 320 may include a transmitter 321 and areceiver 322.

The transmitter 321 may transmit the RTP packet to the outside. The RTPpacket may include an RTP header and an RTP payload. The RTP header asherein used may include data fields having a strength of the receivedsignal and an indicator indicating that the strength of the receivedsignal is included in the RTP header.

The receiver 322 may receive an RTP packet from an external electronicdevice. In accordance with various embodiments of the presentdisclosure, the RTP packet received by the receiver 322 may include anRTP header. The RTP header may include data fields having a strength ofthe received signal and an indicator indicating that the strength of thereceived signal is included in the RTP header.

For example, in accordance with various embodiments of the presentdisclosure, an electronic device may include a processor for determininga network condition from a received signal and setting one of referencevalues set for corresponding network conditions as a transmission ratefor the determined network condition; and a communication module fortransmitting the packet at the transmission rate.

In accordance with various embodiments of the present disclosure, theprocessor may control the communication module to retransmit the packetat least one time if the packet is allowed to be retransmitted withinthe preallocated bandwidth. The preallocated bandwidth may be set inadvance on the QoS basis. The reference value may include a value of thebitrate for the packet, which may be set to correspond to a bitrate anda codec.

In accordance with various embodiments of the present disclosure, theprocessor may determine the strength of a received signal of a secondelectronic device from a signal transmitted from the second electronicdevice through the communication module, and determine a networkcondition by taking into account the determined strength of the receivedsignal of the second electronic device as well as the strength of asignal received from the second electronic device.

In various embodiments, the processor may insert information about thestrength of the received signal from the second electronic device to aheader of an RTP packet. The header may include a data field indicatingthat the information about the strength of the received signal isincluded in the header.

In accordance with various embodiments of the present disclosure, theprocessor may determine the network condition further based upon asignal strength of the electronic device stored in a header of aReal-time Transport Protocol (RTP) packet combined with the receivedsignal of the second electronic device.

FIG. 4 is a flowchart illustrating operations for setting a bitrate inan electronic device according to an embodiment of the presentdisclosure.

Referring to FIG. 4, in operation 410, an electronic device maydetermine a network condition from a received signal. The term ‘receivedsignal’ may refer to a Received Signal Strength Indication (RSSI) orReference Signal Received Power (RSRP), and the network condition may beclassified into strong electric field, medium electric field, and weakelectric filed based on the strength of the received signal.

In various embodiments, the network condition may be determined based ona reception strength of another electronic device, which is included inthe header extension of the RTP packet. For example, as represented inTable 1, the current network condition may be classified into strongelectric field, medium electric field, and weak electric filed based onat least one of reception strength values, such as RSRP, RSRQ, SINR, andthe like.

In operation 420, the electronic device may determine a reference valuecorresponding to the network condition. The reference value may be abitrate for a particular codec or a size of the RTP payload, which maybe set according to a particular network condition.

In operation 430, the electronic device may set a bitrate according tothe network condition. Furthermore, the electronic device may determinethe size of the RTP payload allowed to be transmitted at the setbitrate.

In operation 440, in various embodiments, the electronic device maydetermine whether to perform retransmission. Whether to performretransmission may be determined according to whether the RTP payload isallowed to be transmitted several times within the bandwidth allocatedaccording to a QoS level. For example, when the bandwidth is allocatedenough to retransmit the RTP payload, in operation 450, the electronicdevice may retransmit the data. On the other hand, when the bandwidth isallocated insufficiently to transmit the RTP payload several times, theelectronic device may determine the network condition again from thereceived signal in operation 410.

At least one of the operations shown in FIG. 4 may be omitted in someembodiments, or at least one additional operation may be added to theoperations in some other embodiments. Operations of FIG. 4 may beprocessed in the displayed order, or the orderings may be changed.

FIG. 5 is a flowchart illustrating operations for setting a bitrate inan electronic device according to other embodiments of the presentdisclosure.

Referring to FIG. 5, in operation 510, a first electronic device maydetermine a strength of a received signal.

In operation 520, the first electronic device may receive an RTP packettransmitted from a second electronic device.

In operation 530, the first electronic device may determine a strengthof a received signal of the second electronic device from the RTPpacket.

In operation 540, the first electronic device may set a bitrate usingthe received signal of the first electronic device and the receivedsignal of the second electronic device. In various embodiments, thebitrate may be set after a network condition is determined using thereceived signal of each electronic device.

At least one of the operations shown in FIG. 5 may be omitted in someembodiments, or at least one additional operation may be added to theoperations in some other embodiments. Operations of FIG. 5 may beprocessed in the displayed order, or the orderings may be changed.

FIG. 6 is a flowchart illustrating a method for transmitting a strengthof a received signal in an electronic device according to an embodimentof the present disclosure.

Referring to FIG. 6, in operation 610, an electronic device maydetermine a strength of a received signal.

In operation 620, the electronic device may add the value of thestrength of the received signal (e.g., RSRP, RSSI, and the like) to anRTP header. For example, as the value of the strength of the receivedsignal is added to the RTP header, the RTP header may further include avalue indicating that the value of the strength of the received signalis included therein.

In operation 630, the electronic device may transmit the RTP packet toanother electronic device. Upon reception of the RTP packet thatincludes the value of the strength of the received signal, the otherelectronic device may determine the network condition by taking intoaccount the strength of a signal received by itself and the value of thestrength of the received signal included in the RTP packet.

At least one of the operations shown in FIG. 6 may be omitted in someembodiments, or at least one additional operation may be added to theoperations in some other embodiments. Operations of FIG. 6 may beprocessed in the displayed order, or the orderings may be changed.

FIG. 7 is a signaling chart illustrating operations for setting abitrate between electronic devices according to an embodiment of thepresent disclosure.

Referring to FIG. 7, in operation 710, first and second electronicdevices 701 and 702 may be in communication over a network.

In operation 712, the first electronic device 701 may determine anetwork condition from a received signal. The first electronic device701 may determine a strength of the received signal to determine thenetwork condition, and the strength of the received signal may be astrength of a reference signal or a strength of a signal receivedthrough communication with the second electronic device 702.

In operation 714, the first electronic device 701 may set a bitrateusing the network condition. The network condition may be classifiedinto strong, medium, and weak electric fields. The first electronicdevice 701 may set a bitrate based on the classified network condition.

In operation 720, the first electronic device 701 may transmit data tothe second electronic device 702 at the set bitrate within QoSbandwidth. The data for transmission may be RTP data.

In operation 722, the first electronic device 701 may retransmit thedata. In the meantime, the first electronic device 701 may determinewhether to perform the retransmission by taking into account theallocated QoS bandwidth and the size of the data for transmission. Thesize of the data may an RTP payload. For example, if the data fortransmission may be transmitted several times in the allocated QoSbandwidth, the data is allowed to be retransmitted.

In operation 730, the first electronic device 701 may transmit thesecond electronic device 702 the strength of the received signal in theRTP header.

In operation 732, the second electronic device 702 may determine anetwork condition from the strength of the received signal of the firstelectronic device 701 and a strength of a signal received by the secondelectronic device 702. The second electronic device 702 may determinethe strength of the received signal of the first electronic device 701from the RTP header.

In operation 734, the second electronic device 702 may set a bitrateusing the determined network condition.

In operation 740, the second electronic device 702 may transmit data atthe set bitrate.

At least one of the operations shown in FIG. 7 may be omitted in someembodiments, or at least one additional operation may be added to theoperations in some other embodiments. Operations of FIG. 7 may beprocessed in the displayed order, or the orderings may be changed.

For example, in accordance with various embodiments of the presentdisclosure, a method, which is performed in an electronic device, mayinclude determining a network condition from a received signal; settingone of reference values set for corresponding network conditions as atransmission rate for the determined network condition; and transmittinga packet at the transmission rate.

In accordance with various embodiments of the present disclosure, themethod may further include retransmitting the packet at least one timeif the packet is allowed to be retransmitted within a preallocatedbandwidth. The preallocated bandwidth may be set in advance on the QoSbasis. The reference value may include a value of the bitrate for thepacket, which may be set for a corresponding codec.

In various embodiments, the method may further include determining astrength of a received signal of the second electronic device from asignal transmitted from the second electronic device; and determining anetwork condition by taking into account a strength of the signaltransmitted from the second electronic device and the strength of thereceived signal of the second electronic device. Information about thestrength of the received signal of the second electronic device may beincluded in the header of an RTP packet. The header may include a datafield indicating that the information about the strength of the receivedsignal is included in the header.

In accordance with various embodiments of the present disclosure, thenetwork condition is determined based upon a signal strength of theelectronic device stored in a header of a Real-time Transport Protocol(RTP) packet combined with the received signal of the second electronicdevice.

FIG. 8 illustrates an RTP packet structure according to an embodiment ofthe present disclosure.

Referring to FIG. 8, the RTP packet may include an RTP payload (notshown) and an RTP header 800. The RTP header 800 may include data fieldsfor version V, padding P, extension X (810), CSRC count CC, marker M,payload type PT, sequence number, timestamp, synchronization source(SSRC) identifier, contributing sources (CSRC) identifiers.

The V may be a field for identifying a version of the RTP packet. The Pmay be a field for identifying whether the RTP packet includes at leastone padding bit at the end of the payload. The X 810 may be a field forindicating whether a received signal or information about the receivedsignal is included, in accordance with various embodiments of thepresent disclosure. For example, the X 810 may have a bit indicating“true” or “false”. If the X 810 has the bit indicating “true”, theelectronic device may check a header extension 910 (shown in FIG. 9) invarious embodiments of the present disclosure.

The CC may be a field that includes the number of CSRC identifiers ofthe RTP header 800. The CSRC as herein used may refer to SSRCidentifiers of resources that contribute to generating the RTP header.

The M may be a field that includes a characteristic of the packet.

The PT may be a field that indicates a format of the RTP payloadcorresponding to the RTP header 800.

The “sequence number” may be a field that indicates a place of each RTPpacket being transmitted for an electronic device that receives the RTPpacket.

The “timestamp” may be a field that indicates a point in time when thefirst byte (octet) of the RTP packet was sampled.

The “SSRC identifier” may be a field that includes an identifier toidentify a resource in the RTP session.

The “CSRC identifiers” may be a field that includes identifiers for CSRCidentification.

FIG. 9 illustrates an extended RTP packet structure according to anembodiment of the present disclosure.

Referring to FIG. 9, an RTP packet may further include an RTP headerextension 900. In various embodiments, as the X 810 indicates “true”,the electronic device may check the RTP header extension 900.

The RTP header extension 900 may include data fields of “defined byprofile”, “length”, header extension 910, and the like. In variousembodiments, the header extension 910 may include information about astrength of a received signal of an electronic device. The receivedsignal may refer to a value of the strength of the received signal.

FIG. 10 is a block diagram of an electronic device according to anembodiment of the present disclosure.

Referring to FIG. 10, the electronic device 1001 may constitute theentire or some of the electronic device 101 shown in FIG. 1. Theelectronic device 1001 may include one or more processors (e.g.,Application Processors (APs)) 1010, a communication module 1020, aSubscriber Identification Module (SIM) card 1024, a memory 1030, asensor module 1040, an input device 1050, a display 1060, an interface1070, an audio module 1080, a camera module 1091, a power manager module1095, a battery 1096, an indicator 1097, and a motor 1098.

The AP 1010 may control hardware and software components connected tothe AP 1010 by running an operating system or application programs, andperform data processing and operation. The AP 1010 may be implementedin, for example, a System on Chip (SoC). In accordance with anembodiment, the AP 1010 may further include a Graphic Processing Unit(GPU).

The communication module 1020 (corresponding to the communicationinterface 160) may communicate data with other electronic devices, suchas the external electronic device 104 and the server 106 connected via anetwork. In accordance with an embodiment, the communication module 1020may include a cellular module 1021, a Wi-Fi module 1023, a BT module1025, a GPS module 1027, an NFC module 1028, and a Radio Frequency (RF)module 1029.

The cellular module 1021 may provide voice calls, video calls, SMS orInternet services over a communication network, such as LTE, LTE-A,CDMA, WCDMA, UMTS, WiBro, GSM, and the like. The cellular module 1021may also identify and authenticate an electronic device in thecommunication network in cooperation with the SIM card 1024. Inaccordance with an embodiment, the cellular module 1021 may perform atleast a part of functions that the AP 1010 may provide. For example, thecellular module 1021 may perform at least a part of multimedia controlfunction.

In an embodiment, the cellular module 1021 may include a CommunicationProcessor (CP). The cellular module 1021 may also be implemented in, forexample, an SoC. While the components of FIG. 10, such as the cellularmodule 1021 (e.g., a CP), the memory 1030 or the power manager module1095 are illustrated as being separate from the AP 1010, the AP 1010 mayincorporate some of the aforementioned components (e.g., the cellularmodule 1021) in other embodiments.

In accordance with an embodiment, the AP 1010 or the cellular module1021 (e.g., a CP) may load a command or data received from at least oneof a non-volatile memory or other components connected to the AP 1010 orthe cellular module 1021, and then process the command or data. Inaddition, the AP 1010 or the cellular module 1021 may store datareceived from at least one of the other components or generated by atleast one of the other components in a non-volatile memory.

The Wi-Fi module 1023, the BT module 1025, the GPS module 1027, and theNFC module 1028 may each include a processor for processing datatransmitted or received through the corresponding module. While FIG. 10illustrates each of the cellular module 1021, the Wi-Fi module 1023, theBT module 1025, the GPS module 1027, and the NFC module 1028 as aseparate block, some of them (e.g., two or more of them) may beincorporated in a single Integrated Chip (IC) or an IC package in otherembodiments. For example, at least some of processors corresponding tothe cellular module 1021, the Wi-Fi module 1023, the BT module 1025, theGPS module 1027, and the NFC module 1028, for example, a CP of thecellular module 1021 and a Wi-Fi processor of the Wi-Fi module 1023 maybe implemented in a single SoC.

The RF module 1029 may perform data communication, more specifically, RFsignal communication. The RF module 1029 may include, for example, atransceiver, a Power Amp Module (PAM), a frequency filter, or a LowNoise Amplifier (LAN) (not shown). The RF module 1029 may furtherinclude some parts for wireless communication, i.e., for transmitting orreceiving RF signals over the air, such as conductors, wires, and thelike. While FIG. 10 illustrates that the cellular module 1021, the Wi-Fimodule 1023, the BT module 1025, the GPS module 1027, and the NFC module1028 share the single RF module 1029, at least one of them may performRF signal communication through a separate RF module.

The SIM card 1024 may include a subscriber identification module, andmay be inserted into a slot formed in a particular position in theelectronic device.

The SIM card 1024 may include a unique identification information, suchas Integrated Circuit Card Identifier (ICCID), or subscriberinformation, such as International Mobile Subscriber Identity (IMSI).

The memory 1030 (corresponding to the memory 130) may include aninternal memory 1032 or an external memory 1034. The internal memory1032 may include, for example, at least one of a volatile memory, suchas Dynamic Random Access Memory (DRAM), Static RAM (SRAM), SynchronousDynamic RAM (SDRAM), and the like, and a non-volatile memory, such asOne Time Programmable Read Only Memory (OTPROM), Programmable ROM(PROM), Erasable and Programmable ROM (EPROM), Electrically Erasable andProgrammable ROM (EEPROM), mask ROM, flash ROM, NAND flash memory, Norflash memory, and the like.

In an embodiment, the internal memory 1032 may be a Solid State Drive(SSD). The external memory 1034 may include a flash drive, such ascompact flash (CF), secure digital (SD), micro secure digital(Micro-SD), mini secure digital (Mini-SD), extreme digital (xD), memorystick, and the like. The external memory 1034 may be operationallyconnected to the electronic device 1001 through various interfaces. Inan embodiment, the electronic device 1001 may further include a storagedevice (or a storage medium), such as a hard drive.

The sensor module 1040 may measure a physical quantity or convertinformation measured or detected by monitoring the electronic device1001 to an electric signal. The sensor module 1040 may include at leastone of a gesture sensor 1040A, a gyro sensor 1040B, an atmosphericpressure sensor 1040C, a magnetic sensor 1040D, an acceleration sensor1740E, a grip sensor 1040F, a proximity sensor 1040G, a color sensor1040H such as an RGB (Red, Green, Blue) sensor, a bio sensor 1040I, atemperature/humidity sensor 1040J, an illumination sensor 1040K, anUltra Violet (UV) sensor 1040L and a Touch Sensor 1040M. Additionally oralternatively, the sensor module 740 may include an E-nose sensor, anelectromyography (EMG) sensor, an electroencephalogram (EEG) sensor, anelectrocardiogram (ECG) sensor, an infrared (IR) sensor, an iris sensor,a finger print sensor, and the like. The sensor module 1040 may furtherinclude a control circuit for controlling at least one or more of thesensors included in the sensor module 540.

The input device 1050 may include a touch panel 1052, a (digital) pensensor 1054, a key 1056, or an ultrasonic input device 1058. The touchpanel 1052 may recognize touch inputs in at least one of capacitive,resistive, infrared, and ultrasonic methods. The touch panel 1052 mayfurther include a control circuit.

With the resistive method, physical contact or proximity detection maybe possible. The touch panel 1052 may further include a tactile layer.In this regard, the touch panel 1052 may provide the user with a tactileresponse.

The (digital) pen sensor 1054 may be implemented in a way identical orsimilar to, for example, how a touch input of a user is received, or byusing a separate sheet for recognition. The key 1056 may include, forexample, a physical button, optical key or key pad. The ultrasonic inputdevice 1058 may use an input tool that generates an ultrasonic signaland enable the electronic device 1001 to determine data by sensing theultrasonic signal to the microphone 1088, thereby enabling wirelessrecognition. In an embodiment, the electronic device 1001 may receive auser input from an external electronic device, such as a computer or aserver through the communication module 1020.

The display 1060 (corresponding to the display 150) may include a panel1062, a hologram device 1064, or a projector 1066. The panel 1062 maybe, for example, a Liquid Crystal Display (LCD), Active Matrix OrganicLight Emitting Diodes (AMOLEDs), and the like. The panel 1062 may beimplemented to be flexible, transparent, or wearable. The panel 1062 mayalso be incorporated with the touch panel 1052 in a unit. The hologramdevice 1064 may make three dimensional (3D) images (holograms) in theair by using light interference. The projector 1066 may display an imageby projecting light onto a screen. The screen may be, for example,located inside or outside of the electronic device 1001. In accordancewith an embodiment, the display 1060 may further include a controlcircuit to control the panel 1062, the hologram device 1064, or theprojector 1066.

The interface 1070 may include, for example, a High DefinitionMultimedia Interface (HDMI) 1072, a USB 1074, an optical interface 1076,or a D-subminiature (D-sub) 1078. The interface 1070 may be included in,for example, the communication interface 160 shown in FIG. 8.Additionally or alternatively, the interface 1070 may include a MobileHigh-definition Link (MHL) interface, a secure digital (SD)card/multimedia card (MMC) interface, or IrDA standard interface.

The audio module 1080 may convert a sound to an electric signal or viceversa. At least a part of the audio module 1080 may be included in, forexample, the I/O interface 140 as shown in FIG. 1. The audio module 1080may process sound information input or output through, for example, aspeaker 1082, a receiver 1084, an earphone 1086, or a microphone 1088.

The camera module 1091 may be a device for capturing still images andvideos, and may include, in an embodiment, one or more image sensors(e.g., front and back sensors), a lens, an Image Signal Processor (ISP),or a flash such as an LED or xenon lamp. The camera module 1091 may becontrolled by cooperation of the touch sensor 1040M and the AP 1010, inaccordance with various embodiments of the present disclosure. Forexample, the electronic device 1001 may provide a function associatedwith the camera module 1091 once a gesture set up by a signal detectedby the touch sensor 1040M is determined.

The power manager module 1095 may manage power of the electronic device1001. Although not shown, for example, a Power management IntegratedCircuit (PMIC), a charger IC, or a battery or fuel gauge is included inthe power manager module 1095. The PMIC may be mounted on, for example,an IC or an SOC. A charging method may be divided into wired andwireless charging methods. The charger IC may charge a battery andprevent overvoltage or overcurrent from being induced from a charger. Inan embodiment, the charger IC may be used in at least one of a cablecharging scheme and a wireless charging scheme. The wireless chargingscheme may include, for example, a magnetic resonance scheme, a magneticinduction scheme, or an electromagnetic wave based scheme, and anadditional circuit, such as a coil loop, a resonance circuit, arectifier, and the like may be added for wireless charging.

The battery gauge may measure an amount of remaining power of thebattery 696, a voltage, a current, or a temperature while the battery1096 is being charged. The battery 1096 may save or generateelectricity, and supply power to the electronic device 1001 with thesaved or generated electricity. The battery 1096 may include, forexample, a rechargeable battery or a solar battery.

The indicator 1097 may indicate a particular state of the electronicdevice 1001 or a part of the electronic device (e.g., the AP 1010), theparticular state including, for example, a booting state, a messagestate, or charging state. The motor 1098 may convert electric signals tomechanical vibration. Although not shown, a processing unit forsupporting mobile TV, such as a GPU may be included in the electronicdevice 1001. The processing unit for supporting mobile TV may processmedia data conforming to a standard for Digital Multimedia Broadcasting(DMB), Digital Video Broadcasting (DVB), or Media Flow.

FIG. 11 shows communication protocols between multiple electronicdevices (e.g., first and second electronic devices 1101 and 1102)according to an embodiment of the present disclosure.

Referring to FIG. 11, the communication protocol 1100 may include adevice discovery protocol 1151, a capability exchange protocol 1153, anetwork protocol 1155, a real-time transport protocol 1157, and anapplication protocol 1159.

In accordance with an embodiment, the device discovery protocol 1151 mayenable each of the electronic devices (e.g., the electronic device 1101or the second electronic device 1102) to discover an external devicethat may be able to communicate with the electronic device 1101 or 1102and to connect to the discovered device. For example, with the devicediscovery protocol 1151, the electronic device 1101 (corresponding tothe electronic device 101) may detect the second electronic device 1102(corresponding to the external electronic device 104 that may be able tocommunicate with the first electronic device 1110 by means of acommunication scheme, such as Wi-Fi, BT or USB that may be employed bythe first electronic device 1101. The first electronic device 1101 mayuse the device discovery protocol 1151 to obtain and storeidentification information for the detected second electronic device1102, in order to make a connection with the second electronic device1102. The first electronic device 1101 may, for example, establish acommunicative connection with the second electronic device 1102 based onthe identification information.

In some embodiments, the device discovery protocol 1151 may be aprotocol for mutual authentication among multiple electronic devices.For example, the first electronic device 1101 may perform anauthentication procedure with the second electronic device 1102 based onthe communication information for access to at least the secondelectronic device, such as Media Access Control (MAC) address,Universally Unique Identifier (UUID), Subsystem Identification (SSID),Information Provider (IP) address, and the like.

In accordance with an embodiment, the capability exchange protocol 1153may be defined to exchange information associated with a servicecapability that may be supported by at least one of the first and secondelectronic devices 1101 and 1102. For example, with the capabilityexchange protocol 1153, the first and second electronic devices 1101 and1102 may exchange information associated with service capabilities beingcurrently provided by them. The exchangeable information may includeidentification information indicating a particular service among amultiple services that may be supported by the electronic devices 1101and 1102. For example, the first electronic device 1101 may receiveidentification information for a particular service provided by thesecond electronic device 1102 from the second electronic device throughthe capability exchange protocol 1153. In this regard, the firstelectronic device 1101 may determine whether to support a particularservice based on the received identification information.

In accordance with an embodiment, the network protocol 1155 may bedefined to control data flow between electronic devices (e.g., the firstand second electronic devices 1101 and 1102) connected forcommunication, in order for the first and second electronic devices 1101and 1102 to provide a service in cooperation with each other. Forexample, at least one of the first and second electronic devices 1101and 1102 may perform error control, data quality control and the like,using the network protocol 1155. Additionally or alternatively, thenetwork protocol 1155 may define a transfer format of data exchangedbetween the first and second electronic devices 1101 and 1102.Furthermore, with the network protocol 1155, at least one of the firstand second electronic devices 1101 and 1102 may manage at least asession (e.g., connect the session or terminate the session) for dataexchange.

In accordance with various embodiments of the present disclosure, thereal-time transport protocol 1157 may be a protocol to provide areal-time data service among multiple electronic devices (e.g., thefirst and second electronic devices 1101 and 1102). The real-timetransport protocol 1157 may define a format of an RTP packet fordelivering audio and video in real time over an IP-based network.

In accordance with an embodiment, the application protocol 1159 may bedefined to provide a procedure or information for exchanging dataassociated with a service to be provided to a foreign electronic device.For example, with the application protocol 1159, the first electronicdevice 1101 (corresponding to the electronic device 101) may provide aservice to the second electronic device 1102, for example, theelectronic device 104 or the server 106.

In accordance with an embodiment, the communication protocol 1100 mayinclude a standard communication protocol, a proprietary communicationprotocol defined by an individual or association (e.g., by acommunication equipment manufacturer or a network provider), or acombination thereof.

The term ‘module’ as used herein may refer to a unit including one ofhardware, software, and firmware, or a combination thereof. The term‘module’ may be interchangeably used with a unit, logic, logical block,component, or circuit. The module may be a minimum unit or part of anintegrated component. The module may be a minimum unit or part ofperforming one or more functions. The module may be implementedmechanically or electronically. For example, the module may include atleast one of Application Specific Integrated Circuit (ASIC) chips, FieldProgrammable Gate Arrays (FPGAs), and Programmable Logic Arrays (PLAs)that perform some operations, which have already been known or will bedeveloped in the future.

At least a part of the device (e.g., modules or their functions) ormethod (e.g., operations) may be implemented as instructions stored in acomputer-readable storage medium, for example, in the form of aprogramming module. The instructions, when executed by one or moreprocessor (e.g., the processor 120), may cause the processor to carryout a corresponding function. The computer-readable storage medium maybe, for example, the memory 130. At least a part of the programmingmodule may be implemented by, for example, the processor 120. At least apart of the programming module may include, for example, a module,program, routine, set of instructions, process, and the like forperforming one or more functions.

The computer-readable storage medium may include a hardware deviceconfigured to store and perform program instructions (e.g., programmingmodule), such as magnetic media such as hard discs, floppy discs, andmagnetic tapes, optical media such as Compact Disc ROMs (CD-ROMs) andDigital Versatile Discs (DVDs), magneto-optical media such as flopticaldisks, ROMs, RAMs, Flash Memories, and the like. Examples of the programinstructions may include not only machine language codes but alsohigh-level language codes which are executable by various computingmeans using an interpreter. The aforementioned hardware devices may beconfigured to operate as one or more software modules to carry outvarious embodiments of the present disclosure, and vice versa.

Modules or programming modules in accordance with various embodiments ofthe present disclosure may include at least one or more of theaforementioned components, omit some of them, or further include otheradditional components. Operations performed by modules, programmingmodules or other components in accordance with various embodiments ofthe present disclosure may be carried out sequentially, simultaneously,repeatedly, or heuristically. Furthermore, some of the operations may beperformed in a different order, or omitted, or include other additionaloperation(s).

In accordance with various embodiments, provided is a storage mediumhaving instructions stored thereon, the instructions, when executed byat least one processor, causing the at least one processor to perform atleast one operation including: determining a network condition from areceived signal; setting one of reference values set for correspondingnetwork conditions as a transmission rate for the determined networkcondition; and transmitting a packet at the transmission rate.

An electronic device and method for processing packets in an IP-basednetwork according to various embodiments of the present disclosure mayset a bitrate after determining a network condition before the qualityof a call service degrades, and transmit packet data at the set bitrate,thereby preventing the packet data from being delayed or lost.

According to the various embodiments of the present disclosure of theelectronic device and method for processing packets in an IP-basednetwork, waste of unused bandwidth due to excessive bandwidth allocationmay be reduced by retransmitting packets several times withinpreallocated bandwidth.

While the present disclosure has been shown and described with referenceto various embodiments thereof, it will be understood by those skilledin the art that various changes in form and details may be made thereinwithout departing from the spirit and scope of the present disclosure asdefined by the appended claims and their equivalents.

What is claimed is:
 1. A method for processing a packet in an electronicdevice in an Internet Protocol (IP)-based network, the methodcomprising: determining a network condition from a received signal;setting one of reference values set for corresponding network conditionsas a transmission rate for the determined network condition; andtransmitting the packet at the transmission rate.
 2. The method of claim1, further comprising retransmitting the packet at least one time if thepacket is allowed to be retransmitted within a preallocated bandwidth.3. The method of claim 2, wherein the preallocated bandwidth is set inadvance on a Quality of Service (QoS) basis.
 4. The method of claim 1,wherein the one of reference values comprises a value of a bitrate ofthe packet, which is set based on the bitrate and a codec.
 5. The methodof claim 1, further comprising: determining a strength of a receivedsignal of a second electronic device from a signal transmitted from thesecond electronic device; and determining the network condition furtherbased on the strength of the received signal of the second electronicdevice.
 6. The method of claim 5, wherein information about the strengthof the received signal of the second electronic device is included in aheader of a Real-time Transport Protocol (RTP) packet.
 7. The method ofclaim 6, wherein the header includes a data field indicating that thestrength of the received signal is included in the header.
 8. The methodof claim 5, wherein the network condition is determined based upon asignal strength of the electronic device stored in a header of aReal-time Transport Protocol (RTP) packet combined with the receivedsignal of the second electronic device.
 9. An electronic devicecomprising: a processor configured: to determine a network conditionfrom a received signal, and to set one of reference values set forcorresponding network conditions as a transmission rate for thedetermined network condition; and a communication module configured totransmit a packet at the transmission rate.
 10. The electronic device ofclaim 9, wherein the processor is further configured to control thecommunication module to retransmit the packet at least one time if thepacket is allowed to be retransmitted within a preallocated bandwidth.11. The electronic device of claim 10, wherein the preallocatedbandwidth is set in advance on a Quality of Service (QoS) basis.
 12. Theelectronic device of claim 9, wherein the one of reference valuescomprises a value of a bitrate of the packet, which is set based on thebitrate and a codec.
 13. The electronic device of claim 9, wherein theprocessor is further configured: to determine the strength of a receivedsignal of a second electronic device from a signal transmitted from thesecond electronic device through the communication module, and todetermine the network condition further based on the determined strengthof the received signal of the second electronic device.
 14. Theelectronic device of claim 13, wherein the processor is furtherconfigured to include information about the strength of the receivedsignal of the second electronic device in a header of a Real-timeTransport Protocol (RTP) packet.
 15. The electronic device of claim 14,wherein the header includes a data field indicating that the strength ofthe received signal is included in the header.
 16. The electronic deviceof claim 13, wherein the processor is configured to determine thenetwork condition further based upon a signal strength of the electronicdevice stored in a header of a Real-time Transport Protocol (RTP) packetcombined with the received signal of the second electronic device.